package edu.zut.cs.software.propertymanagement.commodity.web.spring.controller;
import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.view.json.MappingJackson2JsonView;

import edu.zut.cs.software.base.web.spring.controller.GenericController;
import edu.zut.cs.software.propertymanagement.commodity.domain.Material;
import edu.zut.cs.software.propertymanagement.commodity.service.MaterialManager;

@Controller
//拦截含有favorite的url并处理
@CrossOrigin(origins = "*")
@RequestMapping("/commodity") 
public class MaterialController extends GenericController<Material, Long,MaterialManager> {
	MaterialManager materialManager;

	/*
	 * 部署成功后，在浏览器中输入url
	 * http://localhost:8080/universalStore-web/${1.}/${2.value值}
	 * 例子:http://localhost:8080/universalStore-web/commodity/index.html
	*/
	@RequestMapping(value="/index.html" ,method=RequestMethod.GET)//2.
	public ModelAndView index() {
		ModelAndView mv = new ModelAndView();
		MappingJackson2JsonView jsonView = new MappingJackson2JsonView();
		List<Material> commodityList = materialManager.findAll(); 
		//与WEB-INF/pages中视图地址保持一致
		mv.setViewName("commodity/commodity");
		mv.setView(jsonView);
		mv.addObject("commodityList",commodityList);
		return mv;
	}

	@Autowired
	public void setCommodityManager(MaterialManager materialManager) {
		this.materialManager = materialManager;
		this.manager = this.materialManager;
	}
}
